Import('env')
Import('options')
env = env.Copy()

sourceFiles = [
    'dummy/SND_DummyDevice.cpp',
    'intern/SND_AudioDevice.cpp',
    'intern/SND_C-api.cpp',
    'intern/SND_CDObject.cpp',
    'intern/SND_DeviceManager.cpp',
    'intern/SND_IdObject.cpp',
    'intern/SND_Scene.cpp',
    'intern/SND_SoundListener.cpp',
    'intern/SND_SoundObject.cpp',
    'intern/SND_Utils.cpp',
    'intern/SND_WaveCache.cpp',
    'intern/SND_WaveSlot.cpp',
]

# XXX: can i assume that these are mutually exclusive?
if env['USE_OPENAL']:
    Import('sdlEnv')
    env = sdlEnv.Copy()

    sourceFiles.extend([
        'openal/SND_OpenALDevice.cpp',
        'openal/pthread_cancel.cpp',
        'sdl/SND_SDLCDDevice.cpp',
    ])
    env.Append(CPPPATH=env['OPENAL_INCLUDE'])
    env.Append(CPPPATH=env['SDL_INCLUDE'])
elif env['USE_FMOD']:
    sourceFiles.extend(['fmod/SND_FmodDevice.cpp'])
else:
    env.Append(CPPDEFINES='NO_SOUND')

env.Append(CPPPATH=['../SoundSystem', 'intern', '../moto/include', '../string', 'dummy', 'openal', 'sdl'])
env.Library(target='#$BUILD_DIR/lib/blender_soundsystem', source=sourceFiles)
